It is not rare for multiple host logical block addresses (LBAs) identifying data, in blocks, that is intended for saving (or “writing”) to solid state disks (SSDs) to arrive from a host in duplicates. That is, two different host LBAs, with a common data, may each point to the same SSD LBA (SLBA) yet arrive at different times.
Data reduction techniques, such as block-level deduplication and compression, are widely used in the industry to take advantage of duplications by avoiding writing the same data more than once and therefore reduce enterprise storage requirements as well as the overall cost of data storage. This can and typically does, in enterprise applications, in particular, result in great cost-savings where large data is abundant.
That is, when data reduction techniques, such as deduplication, are employed in a storage application, the same data associated with multiple host blocks is written only once to storage (such as SSDs). Accordingly, deduplication reduces storage capacity requirements for data storage by eliminating duplicated blocks of data that are identified by non-identical LBAs.
However, current methods of de-duplication are not abundantly employed in Redundant Array of Independent Disks (RAID) applications using SSDs. Those employed are not efficient and at times, costly.
Therefore, there is a need for a method and apparatus to efficiently and with lower costs, avoid writing duplicates of host data to SSDs.